#include "TADTrabaj.h"

#include <stdio.h>
#include <conio.h>
#include <string.h>


unsigned short ConsultarNH(Trabaj);


Trabaj PedirDatosTRabajador()
{
	Trabaj T;
	T.N_Hijos=0;
	T.S_Bruto=0;

	printf("Introduzca el numero hijos:");
	flushall();
	scanf("%hu",&T.N_Hijos);

	printf("Introduzca el sueldo bruto:");
	flushall();
	scanf("%f",&T.S_Bruto);

	printf("Introduzca la cuenta corriente del trabajador:");
	flushall();
	scanf("%[^\n]",T.CC);

	return(T);
	
}

Trabaj CrearDatosTRabajador(unsigned short E, float S, char *CCor)
{

	Trabaj T;

	T.N_Hijos=E;
	T.S_Bruto=S;
	strdup(T.CC,CCor);

	return (T);
}


unsigned short ConsultarNH(Trabaj T)
{
	return (T.CC);

}

float ObtenerSNeto(Trabaj T)
{

	float SN;

	SN=(T.S_Bruto*0,16)-(T.S_Bruto*0.042)+T.S_Bruto;

	return(SN);

}

void VisualizarDatosTrabaj(Trabaj T)
{
	printf("\nNumero hijos: %hu",T.N_Hijos);
	printf("\nSueldo Bruto: %0.2f",T.S_Bruto);
	printf("\nCuenta Corriente: %s",T.CC);


}


void CopiarTrabajador(Trabaj *TD, Trabaj TF)
{
  TD->N_Hijos = TF.N_Hijos;
  TD->S_Bruto = TF.S_Bruto;
  strcpy(TD->CC,TF.CC);
}

void modificarTrab(Trabaj *T)
{
	Trabaj T1;

	printf("\nintroduzca los nuevos datos del trabajador: \n");

	T1=PedirDatosTRabajador();

	T->N_Hijos=T1.N_Hijos;
	T->S_Bruto=T1.S_Bruto;
	memset(T->CC,strlen(T->CC),' ');
	strcpy(T->CC,T1.CC);

}

void escribirTrabFich(Trabaj T1, FILE *dir)
{
	fprintf(dir,"%hu:%0.2f:%s:",T1.N_Hijos,T1.S_Bruto,T1.CC);
}

void datosTrabFich(Trabaj *T1,FILE *dir)
{
	int cont=0,cont2=0;
	char aux[19];
	
	fscanf(dir,"%hu:%f.%i%i:",&T1->N_Hijos,&T1->S_Bruto,&cont,&cont2);

	aux[cont]=fgetc(dir);
	
	for (cont=0;aux[cont-1]!=':';cont++)
	{
		aux[cont]=fgetc(dir);
	}
	
	for (cont2=0;cont2<cont-1;cont2++)
	{
		T1->CC[cont2]=aux[cont2];
	}

}
